package com.jf.cloud.platform.mapper;

import com.jf.cloud.common.database.util.PageAdapter;
import com.jf.cloud.platform.dto.InformationDTO;
import com.jf.cloud.platform.model.Information;
import com.jf.cloud.platform.vo.InformationVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 
 *
 * @author zz
 * @date 2023-03-06 09:14:00
 */
public interface InformationMapper {

    /**
     * 获取列表
     * @return 列表
     */
    List<Information> list(@Param("informationDto") InformationDTO informationDTO);

    /**
     * 根据id获取
     *
     * @param id id
     * @return 
     */
    Information getById(@Param("id") Long id);

    /**
     * 保存
     * @param information 
     */
    void save(@Param("information") Information information);

    /**
     * 更新
     * @param information 
     */
    void update(@Param("information") Information information);

    /**
     * 根据id删除
     * @param id
     */
    void deleteById(@Param("id") Long id);

    /**
     * 根据查询用户的条件，查询用户
     *
     * @param informationDTO 查询条件
     * @return 数量
     */
    Long countPageByParam(@Param("informationDTO") InformationDTO informationDTO);

   List<InformationVO> getInformationList(@Param("informationDTO") InformationDTO informationDTO, @Param("pageAdapter") PageAdapter pageAdapter);
}
